Skip to content

使用 SQL Server Management Studio 設定資料表描述

TLDR

  • 設定資料表描述有助於資料庫文件化,並支援開發工具產生 Table Schema 文件。
  • 建議優先使用 SSMS 的「資料表設計模式」屬性視窗進行設定,操作最為直觀。
  • 若需透過 UI 進行進階設定,可使用「擴充屬性 (Extended Properties)」功能。
  • 使用 Entity Framework 反向工程時,請避免在描述中使用多行文字,以免產生無法編譯的程式碼。
  • 可透過 sp_addextendedpropertysp_updateextendedproperty 預存程序以 SQL 語法進行批次或自動化設定。

使用 SSMS UI 設定資料表描述

在 SQL Server 中,資料表描述是透過「擴充屬性 (Extended Properties)」機制實現的。以下提供兩種透過 SSMS UI 設定的方式。

方式一:透過資料表設計模式(推薦)

什麼情況下會遇到這個問題:當您希望以最直觀、快速的方式為資料表添加註解時。

在 SSMS 中開啟資料表設計模式,直接於「屬性」視窗中編輯描述欄位即可。

table designer description property

方式二:透過擴充屬性視窗

什麼情況下會遇到這個問題:當您需要針對特定屬性進行更細緻的設定,或在無法使用設計模式的環境下。

  1. 在 SSMS 中,右鍵點擊目標資料表,選擇「屬性」。
  2. 進入「擴展屬性」頁面。
  3. 新增屬性名稱為 MS_Description,並在值欄位輸入描述內容。

extended properties dialog

WARNING

畫面中提供多行編輯的 UI 視窗。若您的專案使用 Entity Framework 反向工程,請務必避免使用多行描述,以免導致生成無法編譯的程式碼。

使用 SQL 語法編輯

什麼情況下會遇到這個問題:當您需要進行自動化部署、批次更新大量資料表描述,或偏好使用腳本管理資料庫結構時。

增加資料表描述

若屬性不存在,請使用 sp_addextendedproperty

sql
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'{資料表描述}', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'{資料表名稱}';

修改資料表描述

若屬性已存在,請使用 sp_updateextendedproperty

sql
EXECUTE sp_updateextendedproperty @name = N'MS_Description', @value = N'{資料表描述}', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'{資料表名稱}';

異動歷程

    • 初版文件建立。
    • 增加 SSMS 第二種設定方式。